<?xml version="1.0" encoding="utf-8"?>
<!--
                                                                                     
 h       t     t                ::       /     /                     t             / 
 h       t     t                ::      //    //                     t            // 
 h     ttttt ttttt ppppp sssss         //    //  y   y       sssss ttttt         //  
 hhhh    t     t   p   p s            //    //   y   y       s       t          //   
 h  hh   t     t   ppppp sssss       //    //    yyyyy       sssss   t         //    
 h   h   t     t   p         s  ::   /     /         y  ..       s   t    ..   /     
 h   h   t     t   p     sssss  ::   /     /     yyyyy  ..   sssss   t    ..   /     
                                                                                     
	<https://y.st./>
	Copyright © 2016 Alex Yst <mailto:copyright@y.st>

	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with this program. If not, see <https://www.gnu.org./licenses/>.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<base href="https://y.st./en/weblog/2016/02-February/21.xhtml"/>
		<title>uTox, qTox, and Antox &lt;https://y.st./en/weblog/2016/02-February/21.xhtml&gt;</title>
		<link rel="icon" type="image/png" href="/link/CC_BY-SA_4.0/y.st./icon.png"/>
		<link rel="stylesheet" type="text/css" href="/link/main.css"/>
		<script type="text/javascript" src="/script/javascript.js"/>
		<meta name="viewport" content="width=device-width"/>
	</head>
	<body>
<nav>
	<p>
		<a href="/en/coursework/">Coursework</a> |
		<a href="/en/take-down/">Take-down requests</a> |
		<a href="/en/">Home</a> |
		<a href="/en/a/about.xhtml">About</a> |
		<a href="/en/a/contact.xhtml">Contact</a> |
		<a href="/a/canary.txt">Canary</a> |
		<a href="/en/URI_research/"><abbr title="Uniform Resource Identifier">URI</abbr> research</a> |
		<a href="/en/opinion/">Opinions</a> |
		<a href="/en/law/">Law</a> |
		<a href="/en/recipe/">Recipes</a> |
		<a href="/en/a/links.xhtml">Links</a> |
		<a href="/en/weblog/2016/02-February/21.xhtml.asc">{this page}.asc</a>
	</p>
	<hr/>
	<p>
		Weblog index:
		<a href="/en/weblog/memories">Memories</a> |
		<a href="/en/weblog/"><abbr title="American Standard Code for Information Interchange">ASCII</abbr> calendars</a> |
		<a href="/en/weblog/index_ol_ascending.xhtml">Ascending list</a> |
		<a href="/en/weblog/index_ol_descending.xhtml">Descending list</a>
	</p>
	<hr/>
	<p>
		Jump to entry:
		<a href="/en/weblog/2015/03-March/07.xhtml">&lt;&lt;First</a>
		<a rel="prev" href="/en/weblog/2016/02-February/20.xhtml">&lt;Previous</a>
		<a rel="next" href="/en/weblog/2016/02-February/22.xhtml">Next&gt;</a>
		<a href="/en/weblog/latest.xhtml">Latest&gt;&gt;</a>
			</p>
			<hr/>
</nav>
		<header>
			<h1>uTox, qTox, and Antox</h1>
			<p>Day 00351: <time>Sunday, 2016 February 21</time></p>
		</header>
<p>
	I added the <a href="https://tox.chat/download.html#gnulinux">Tox repository</a> to my source list.
	The instructions given for doing so said to add the package <a href="apt:apt-transport-https"><code>apt-transport-https</code></a>, but Aptitude does not seem to be <abbr title="The Onion Router">Tor</abbr>-compatible without <a href="apt:apt-transport-tor">apt-transport-tor</a> and the pseudo-scheme <code>tor:</code>, so I just replaced the <code>https:</code> scheme with the <code>tor:</code> one instead of installing <code>apt-transport-https</code>.
	That seemed to work without issues.
	My guess is that apt-transport-tor tried to fetch the packages and package information over unencrypted <abbr title="Hypertext Transfer Protocol">HTTP</abbr>, was redirected to <abbr title="Hypertext Transfer Protocol Secure">HTTPS</abbr>, and was able to successfully download from the <abbr title="Hypertext Transfer Protocol Secure">HTTPS</abbr> site.
	This means that either apt-transport-tor is able to download over <abbr title="Hypertext Transfer Protocol Secure">HTTPS</abbr> or the downloads occurred over a non-<abbr title="The Onion Router">Tor</abbr> channel.
	I&apos;m hoping for the former.
</p>
<p>
	Once I had the repository added, I found that <a href="apt:utox">uTox</a> was not available! Both <a href="apt:qtox">qTox</a> and <a href="apt:toxic">Toxic</a> were available as alternatives, but neither sounded as good as uTox.
	qTox is Qt-based, and Qt-based applications tend to be too flashy for my testes.
	Not only that, but they require pulling in a bunch of Qt libraries that I don&apos;t otherwise need because my own Xfce desktop is <abbr title="GIMP Toolkit">GTK+</abbr>-based.
	Toxic on the other hand is a command line application.
	For the most part, I prefer graphical applications.
	I asked in the support channel, and they said that they currently have no package maintainer, so there are no uTox packages in the main repository.
	Instead, I was told to change the &quot;code name&quot; component of my <abbr title="Advanced Package Tool">APT</abbr> line to <code>release</code>.
	I assumed that the &quot;code name&quot; in <code>deb tor://pkg.tox.chat/debian nightly jessie</code> was <code>nightly</code>, so I tried changing that, and no repository was found.
	Thinking that someone had misremembered the name of the repository and seeing that the two available options were <a href="https://pkg.tox.chat/debian/dists/"><code>nightly</code> and <code>stable</code></a>, I tried <code>stable</code> instead.
	This time, the repository was found, but uTox was still not present.
	That was when it occurred to me that the stupid non-numeric nickname given to distribution releases is sometimes referred to as a code name, and the repository seemed to have the directory structure to support changing that to <code>release</code>, so I made that change and uTox became available.
</p>
<p>
	I looked more into Tox today and found that Tox&apos;s long, random, and unruly chat handles can be placed in <abbr title="Domain Name System">DNS</abbr> records, though I&apos;m not sure if they can be linked to that way.
	At the very least, the <abbr title="Domain Name System">DNS</abbr>-enabled name could serve as link text and be there for anyone that needs to write down the name for later use.
	However, the page on <a href="https://wiki.tox.chat/users/toxdns">ToxDNS</a> does not mention the <abbr title="Domain Name System">DNS</abbr> record format or naming scheme and ToxDNS is known to be under-documented.
	It sounds like documentation might be available <a href="https://wiki.tox.chat/users/howtos#how_to_run_a_toxdns_service">within the week</a> though, but I have been known to be quite impatient.
	Using a combination of the <code>groupbot@utox.org</code> identifier found on the wiki page, the <code>_tox</code> subdomain mentioned by <a href="https://github.com/stal888/Tox-QuickDNS">one of the ToxDNS implementations</a>, and a bit of guesswork, I was able to piece together that the <abbr title="Domain Name System">DNS</abbr> record in use was the TXT record at <code>groupbot._tox.utox.org</code> and performed a <abbr title="Domain Name System">DNS</abbr> query to obtain the record format so I could apply that same format to a record within my own domain.
	However, the record was not recognized by uTox.
	I tried using the name <code>groupbot@utox.org</code> instead, but that didn&apos;t work either, so I decided to install and test on <a href="apt:qtox">qTox</a>.
	Neither name worked on qTox either, though qTox mentioned needing to make a connection outside of my proxy to look up the names, which I allowed.
	A bit later, I decided to ask about if the feature was even implemented yet, as the known-good data, <code>groupbot@utox.org</code>, was not working.
	I wanted to be as clear as possible, to I tried the handle in both clients to get the exact error messages.
	However, this time, the handle worked in both! I tried my own handle, <code>laptop@y.st</code>, and that worked as well.
	I have no idea what the problem had been, but it seems to have resolve itself.
</p>
<p>
	I do wonder though about the connection made outside of the proxy.
	Is uTox able to resolve the name without bypassing the proxy, unlike qTox, or is it bypassing the proxy without permission? If the TXT records are indeed not able to be reached through a SOCKS proxy because SOCKS handle <abbr title="Domain Name System">DNS</abbr> itself, perhaps this is the issue with <abbr title="Extensible Messaging and Presence Protocol">XMPP</abbr> on my mobile.
	Perhaps the <abbr title="Extensible Messaging and Presence Protocol">XMPP</abbr> clients are unable to check for and resolve SRV records.
</p>
<p>
	Now having the information needed to set up <abbr title="Domain Name System">DNS</abbr> records used by Tox, I decided to add that information to the wiki page on ToxDNS.
	After registering an account though, I found that regular users are not allowed to make changes.
	I would need to get special permission in order to be of any help.
	I could ask for permission, but that&apos;s not really my style.
	If they don&apos;t want help from random users, you can count me out.
</p>
<p>
	Having now used both uTox and qTox, I think that I now prefer qTox.
	Despite being a Qt application, it at least is more featureful than uTox.
	It minimizes to the notification and has the option to automatically start upon logging into your computer (in fairness, uTox and any other application could be set to do this too from Xfce&apos;s Sessions and Startup application).
	However, both applications seem to be unable to properly handle the <a href="https://wiki.tox.chat/users/toxlinks"><abbr title="Uniform Resource Identifier">URI</abbr>s</a> mentioned on the wiki, despite it being stated that both clients support them.
</p>
<p>
	Yesterday, I installed a strange upgrade for <a href="https://f-droid.org/repository/browse/?fdid=org.torproject.android">Orbot</a>.
	It had a different package signature than usual, indicating that it had come from the Guardian Project repository instead of the main F-Droid repository and the user interface looked quite a bit different.
	Today though, while trying to set up the <a href="https://tox.chat/download.html#fdroid">Tox repository</a>, ran into issues.
	It seemed that Orbot was making the connection to the <abbr title="The Onion Router">Tor</abbr> network, but applications were unable to get through.
	Some testing indicated that <a href="https://f-droid.org/repository/browse/?fdid=org.ethack.orwall">orWall</a> was to blame, as Orbot&apos;s transparent proxy mode seemed to allow applications to connect to the network.
	However, nothing had changed with orWall.
	I tried resetting its data and I tried reinstalling it, neither of which worked.
	I tried downgrading Orbot though, and that <strong>*did*</strong> work.
	I&apos;m not sure what the new Orbot release does differently than the old one, but it doesn&apos;t seem to be compatible with orWall.
	Antox, the mobile version of Tox, doesn&apos;t seem to be able to handle ToxDNS, but it does seem to be able to ToxDNS, so I was unable to add <code>laptop@y.st</code> to my contacts for testing.
	Furthermore, uTox and qTox are acting wonky, so I wasn&apos;t able to add <code>mobile@y.st</code> from my laptop.
	I checked the <abbr title="Domain Name System">DNS</abbr> records from my command line, and they are reaching my laptop, so I&apos;m not sure what the problem is.
	I&apos;ll have to try again tomorrow.
</p>
<p>
	We worked on cleaning the house more today, then went to see that movie that I mentioned a few days ago.
	I spent the movie time thinking about Tox and <abbr title="Domain Name System">DNS</abbr> records.
	After that, we went to pick up more bullet shells and went to work in our mother&apos;s classroom.
	She wanted me to staple some papers together to form books for the students, but she got really weird and told me off about what stapler I chose to use.
	She later claimed that it was because she thought that that stapler didn&apos;t work, but that doesn&apos;t make sense for a couple of reasons.
	First of all, it&apos;s the same stapler I used last time that I stapled books together too and she knows that.
	Clearly, that stapler works when I use it, even if she wasn&apos;t lying about the fact that she can never get it to work.
	If it&apos;s true, she simply doesn&apos;t know how to work that stapler, which would be pretty sad seeing as it works just like any other stapler.
	Second, if the stapler really didn&apos;t work, there&apos;d be nothing for her to get ticked off about.
	I&apos;d simply try to use it, fail, then go get another stapler.
	It&apos;s worth noting for the record that after she got weird about the stapler, I did find it to be jammed, but this was only after.
	That might have been the reason that she thought that it didn&apos;t work, but still doesn&apos;t explain her getting angry with me.
	Likely, if it comes up again, she&apos;ll claim that she got angry because I wasted time unjamming it, but I only unjammed it after she had gotten strange, as I had only found that it had been jammed after she had gotten strange; I simply had not made it to the stapling part of the process yet as I was still folding all the papers in half.
	Our mother was also yelling at Vanessa earlier today because our mother was being unclear and Vanessa was not understanding what was being said, so it could be that our mother is on the down side of another one of her bipolar swings.
	I should try to tread lightly.
</p>
		<hr/>
		<p>
			Copyright © 2016 Alex Yst;
			You may modify and/or redistribute this document under the terms of the <a rel="license" href="/license/gpl-3.0-standalone.xhtml"><abbr title="GNU&apos;s Not Unix">GNU</abbr> <abbr title="General Public License version Three or later">GPLv3+</abbr></a>.
			If for some reason you would prefer to modify and/or distribute this document under other free copyleft terms, please ask me via email.
			My address is in the source comments near the top of this document.
			This license also applies to embedded content such as images.
			For more information on that, see <a href="/en/a/licensing.xhtml">licensing</a>.
		</p>
		<p>
			<abbr title="World Wide Web Consortium">W3C</abbr> standards are important.
			This document conforms to the <a href="https://validator.w3.org./nu/?doc=https%3A%2F%2Fy.st.%2Fen%2Fweblog%2F2016%2F02-February%2F21.xhtml"><abbr title="Extensible Hypertext Markup Language">XHTML</abbr> 5.2</a> specification and uses style sheets that conform to the <a href="http://jigsaw.w3.org./css-validator/validator?uri=https%3A%2F%2Fy.st.%2Fen%2Fweblog%2F2016%2F02-February%2F21.xhtml"><abbr title="Cascading Style Sheets">CSS</abbr>3</a> specification.
		</p>
	</body>
</html>

